(function($){
    /**
     * 组件类基类，提供所有组件共有的方法. 
     */    
    function _Component(){}
    
    _Component.prototype.show = function(){
        this.$wrapper.show();
        if(this.fire){
            this.fire('show');
        }    
        return this;
    };
    
    _Component.prototype.hide = function(){
        this.$wrapper.hide();
        if(this.fire){
            this.fire('hide');
        }
        return this;
    };
    
    _Component.prototype.remove = function(){
        this.$wrapper.remove();
        if(this.fire){
            this.fire('remove');
        }
        return this;
    };
    
    //----------------------------------------------------------
    
    ujs.define('Component', 'ujs.ui', function(){
        return _Component;
    });    
})($);